package com.koron.order.grade.bean.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.koron.order.overhaul.utils.DeleteFlag;
import com.koron.order.overhaul.utils.UpdateParameter;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;

/**
 * (WGrade)实体类
 *
 * @author twcao
 * @since 2021-10-11 10:17:12
 */
@Data
@ApiModel("分级分项验收单")
public class OrderGradeBean implements Serializable, DeleteFlag, UpdateParameter {

    private static final long serialVersionUID = -17283071840719245L;

    @ApiModelProperty("32位随机数，主键")
    private String id;

    @ApiModelProperty("工单id")
    private String orderId;

    @ApiModelProperty("分级分项验收工单编码, {大修工单编号}_FJ{流水号}")
    private String code;

    @ApiModelProperty("分级分项验收工单标题")
    private String title;

    @ApiModelProperty("分级分项验收工单名称")
    private String name;

    @ApiModelProperty("专业id")
    private String major;

    @ApiModelProperty("现场负责人")
    private String jober;

    @ApiModelProperty("现场负责人名称")
    private String joberName;

    @ApiModelProperty("验收标准ID")
    private String standardId;

    @ApiModelProperty("验收标准项目ID")
    private String standardItemId;

    @ApiModelProperty("验收级别")
    private Integer level;

    @ApiModelProperty("工单编号")
    private String orderCode;

    @ApiModelProperty("项目描述")
    private String context;

    @ApiModelProperty("验收标准")
    private String contextStandard;

    @ApiModelProperty("验收记录")
    private String recored;

    @ApiModelProperty("工单状态")
    private String status;

    @ApiModelProperty("创建人账户（登录名）")
    private String createBy;

    @ApiModelProperty("创建人名称")
    private String createByName;

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty("创建时间")
    private Date createTime;

    @ApiModelProperty("第一次默认为创建人（登录名）")
    private String updateBy;

    @ApiModelProperty("第一次默认为创建人")
    private String updateByName;

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty("第一次默认为创建时间")
    private Date updateTime;

    @ApiModelProperty("主表需要部门字段，用于数据权限")
    private String deptId;

    @JsonIgnore
    @ApiModelProperty(value = "0：未删除, 1：已删除", hidden = true)
    private Boolean deleteFlag;

    @ApiModelProperty("排序号")
    private Integer sort;
}
